package KontrolLag;

import java.text.DateFormat;
import java.util.Calendar;

import ModelLag.*;
import DBLag.*;

public class HandlingsCtr 
{

	private DbBehPlan dbB;
	private DbGafScore dbG;
	private DbEfterSamtale dbE;
	private DbGetMax gMax;
	
	public HandlingsCtr()
	{
		dbB = new DbBehPlan();
		dbG = new DbGafScore();
		dbE = new DbEfterSamtale();
		gMax = new DbGetMax();
	}
	
	public Handling opretGafScore(Indlaeggelse i)
	{
		Handling g = new GafScore();
		g.sethId(gMax.getMaxHandlingsId()+1);
		g.setiId(i);
		dbG.tilfoejGafScore(g);
		return g;
	}
	
	public void sletGafScore(int hId)
	{
		dbG.sletGafScore(hId);
	}
	
	public Handling opretEfterSamtale(Indlaeggelse i)
	{
		Handling e = new Eftersamtale();
		e.sethId(gMax.getMaxHandlingsId()+1);
		e.setiId(i);
		
		dbE.tilfoejEfterSamtale(e);
		return e;
	}
	
	public void sletEfterSamtale(int hId)
	{
		dbE.sletEfterSamtale(hId);
	}
	
	public Handling opretBehPlan(Indlaeggelse i)
	{
		Handling b = new Behandlingsplan();
		b.sethId(gMax.getMaxHandlingsId()+1);
		b.setiId(i);
		
		
		dbB.tilfoejBehPlan(b);
		return b;
	}
	
	public void sletBehPlan(int hId)
	{
		dbB.sletBehPlan(hId);
	}
	
	public void opdaterGafScore(Handling gafScore)
	{
		dbG.opdaterGafScore(gafScore);
	}
	
	public void opdaterEfterSamtale(Handling efterSamtale)
	{
		dbE.opdaterGafScore(efterSamtale);
	}
	
	public void opdaterBehPlan(Handling behPlan)
	{
		dbB.opdaterbehPlan(behPlan);
	}
	
	public void findGafScore(int hId)
	{
		dbG.findGafScore(hId);
	}
	
	public void findEfterSamtale(int hId)
	{
		dbE.findEfterSamtale(hId);
	}
	
	public void findBehPlan(int hId)
	{
		dbB.findBehPlan(hId);
	}
	
	public Indlaeggelse tilfoejHandlingerPaaIndlaeggelse(Indlaeggelse i)
	{
		for(Handling b : dbB.alleBehandlingsPlanerPaaIndlaeggelse(i))
		{
			i.tilfoejBehPlan(b);
		}
		for(Handling g : dbG.alleGafScorerPaaIndlaeggelse(i))
		{
			i.tilfoejGafScore(g);
		}
		if(dbE.alleEftersamtalerPaaIndlaeggelse(i).size() >= 1)
		{
			for(Handling e : dbE.alleEftersamtalerPaaIndlaeggelse(i))
			{
				i.tilfoejEftersamtale(e);
			}
		}
		return i;
	}
	
	
	
	}
